/*
 * @Author: LAPTOP-STS5K12N\icey 2237665219@qq.com
 * @Date: 2025-01-26 22:00:39
 * @LastEditors: LAPTOP-STS5K12N\icey 2237665219@qq.com
 * @LastEditTime: 2025-01-28 22:31:37
 * @FilePath: \OLED\csrc\ui_manage.h
 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
 */
#ifndef _BSP_H
#define _BSP_H

/*include************************************************ */
#include "main.h"
#include "stdbool.h"
/* Public functions ---------------------------------------------------------*/

/*
    @brief 初始化BSP
*/
void Bsp_Init(void);

/*
    @brief 定时器中断回调函数
*/
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim);

/*
    @brief 软断点
*/
void Bsp_SoftBreakPoint(void);

/*
    @brief AT24C02 写数据
*/
uint8_t AT24C02_Write(uint8_t mem_address, uint8_t *data, uint8_t size);

/*
    @brief AT24C02 读取数据
*/
uint8_t AT24C02_Read(uint8_t mem_address, uint8_t *data, uint8_t size);
/*
    @brief BSP结构体
*/
typedef struct __Bsp_t
{
    bool is_debug;       // 是否处于调试模式
    uint32_t time_count; // 时间计数器

} Bsp_t;

/*
    @brief BSP结构体
*/
extern Bsp_t g_Bsp_vars;

#endif
